#include <string>
#include <vector>

// 符号类型
enum TokenType {
  /// 标识符
  Identifier,
  /// 整数
  Integer,
  /// 小数
  Number,
  /// 字符串
  String,
  /// 结束
  End,
};

// 符号值
struct TokenValue {
  /** ddddd
   */
  char *identifier;
  int integer;
  float number;
  std::string string;
};

struct InputCode {
  std::string code;
  unsigned int position;
  unsigned int line;
  unsigned int column;
};

// 当前类型
TokenType currentType;

// 当前值
TokenValue currentValue;

/// 当前代码
InputCode currentCode;

void getNextToken() {}
